package com.bupt.ilink.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bupt.ilink.entity.DatasetMetadata;
import com.bupt.ilink.entity.ModelMetadata;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Set;

/**
* @author LENOVO
* @description 针对表【model_metadata】的数据库操作Service
* @createDate 2024-08-03 13:02:58
*/
public interface ModelMetadataService extends IService<ModelMetadata> {
    //  确保model_name无重复
    Set<String> getAllNames();

    //  【模型广场】-【首页】-【返回所有元数据】
    IPage<ModelMetadata> getAllModelsByPage(Page<ModelMetadata> page);
    IPage<ModelMetadata> getModelsByKeywords(Page<ModelMetadata> pageRequest, String keywords);
    IPage<ModelMetadata> getModelsByTag(Page<ModelMetadata> pageRequest, String tag);
    IPage<ModelMetadata> getModelsByKeywordsAndTag(Page<ModelMetadata> pageRequest, String keywords, String tag);
    //  【模型广场】-【详情页】
    ModelMetadata selectById(String targetId);

}
